The present invention relates to data processing by digital computer, and more particularly to discovering and monitoring process executions.
Companies and organizations typically use one or more processes that are performed, either in whole or in part, in a system of computers. Such processes typically consist of one or more discrete tasks directed to producing one or more results. The system of computers can consist of multiple computers, each with one or more components. A component may be a software component, such as an application program, or a hardware component, such as a barcode scanner or a radio frequency identification receiver. A component in the system may have one or more interfaces for exchanging information with other components and computers. Further, the system of computers may be a distributed system, in which at least one computer is located in an area physically removed from another computer, such as a different room, building, city, or country. For example, a company may use a computer in a warehouse and a computer in an office building to perform different portions of one process.
Executing a process using components that operate on a distributed computer system can provide substantial benefits, such as the ability to share computing resources. However, it can also make discovering information about and monitoring a process execution difficult or even impossible.